// 手写call方法 函数 ：

// call(thisObj,param1,param2...)
// call 第一个参数 指定this，其余参数 交给函数本身做参数

// Function————

let person = {
    name: 'Cavan',
};

Function.prototype.call2 = function (...args) {
    // console.log('call2', thisObj, args);
    let thisObj = args[0] ? args[0] : null;
    args.shift();
    console.log(args,thisObj.name);
}

function func() {


}
// console.log(func._proto_);//undefined
// console.log(Function);//[Function: Function]
// console.log(func.__proto__.__proto__);//[Object: null prototype] {}
// console.log(func instanceof Function);//true func 是 Function 的实例对象;Function 是 func 的原型对象
func.call2(person, 1, 2, 3);